#ifndef PARAMUNITSETVIEW_H
#define PARAMUNITSETVIEW_H

#include <QWidget>
#include <QTextCodec>
#include <QSqlTableModel>
#include "Settings/Model/ParamUnitsDao.h"

namespace Ui{
class ParamUnit;
}

class ParamUnitSetView : public QWidget
{
    Q_OBJECT
public:
    explicit ParamUnitSetView(QWidget *parent = 0);
    ~ParamUnitSetView();

enum EUnitsSystem
{
    //中国
    Eus_China = 0,

    //国际
    Eus_International = 1,

    //英国
    Eus_UK = 2
};

private:
    void initUi();
    void initModel();
    void initTable();
    void initConnect();

    void showEvent(QShowEvent *e);
    void closeEvent(QCloseEvent *event);

    //读取使用的参数单位信息
    void readParamUnitsInfo(ParamUnitsDao *dao);

    //设置参数单位信息
    void setParamUnitsInfo();

private:
    void refresh_units_display();
    void radioButton_clearCheck();


signals:
    void unitChange();  // 单位改变型号

private slots:
    void unitNationChange(int );
    void unitChoice1(int ,int );
    void unitChoice2(int ,int );

    void radioUnitSelect1();
    void radioUnitSelect2();
    void radioUnitSelect3();
    void radioUnitSelect4();

    // 设置单元格的单位
    void setUnitText( QString str1, QString str2 );
    void on_Btn_default_clicked();


private:
    void setUnitSelectShow(int index);


private:
    Ui::ParamUnit *ui;
    QTextCodec *tc;
    QSqlTableModel *pDefModel;      // 默认的单位模型
    QSqlTableModel *pCurModel;      // 当前使用的单位模型
    ParamUnitsDao *paramUnitsDao;   // 数据单位

    int m_UnitsSystem;              //  单位系统
    int m_selectFlg;                // 选中的标记

};

#endif // PARAMUNITSETVIEW_H
